html, body {
    margin: 0;
    color: #2C3E50;
    font-family: Arial, sans-serif;
    font-size: 16px;
}
.form-row {
    align-items: center!important;
}
.form-row>label:not(:first-child) {
    margin-left: 16px;
}
.form-group:not(:first-child) {
    padding-left: 10px;
}

.container-main {
    min-height: calc(100vh - 24px);
}

.top-banner {
    width: 100%;
    height:280px;
    background-position:center;
    background-size:cover;
    margin-bottom: 20px;
}

.container-860 {
    width: 860px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.container-fluid {
    margin: 0 auto;
    padding: 12px 20px;
    box-sizing: border-box;
}

.footer {
    width: 100%;
    height: 24px;
    background-color: #E6E6E6;
    color: #999999;
    font-size: 12px;
    text-align: center;
    line-height: 24px;
}

.status-buttons .btn {
    margin: 0 4px;
}

.filter>*:not(:first-child) {
    margin-top: 10px;
}
.filter>*:last-child {
    margin-bottom: 10px;
}
.filter .input-control>.form-control {
    padding-right: 8px;
}

.table-responsive tr {
    text-align: center;
}

.ticket-chat {
    margin: 10px 0;
}
.chat-container {
    display: flex;
    flex-direction: column;
    height: 40vh;
}
.chat-container .user {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
.chat-container .user .bubble {
    background-color: #397DEC;
    padding: 3px 10px;
    border-radius: 10px 0 10px 10px;
    color: #fff;
    max-width: 80%;
}
.chat-container .assistant {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}
.chat-container .assistant .bubble {
    background-color: #DFDFDF;
    padding: 3px 10px;
    border-radius: 0 10px 10px 10px;
    max-width: 80%;
}
.chat-container .system {
    display: flex;
    flex-direction: row;
    justify-content: center;
}
.chat-container .system .bubble {
    padding: 3px 10px;
    font-size: 12px;
    color: #999;
}

.chat-container .user, .chat-container .assistant, .chat-container .system {
    margin: 4px 0;
}
